package com.unione.unione_protocol.robot_auto.bean

import android.os.Parcelable
import androidx.annotation.Keep
import com.squareup.moshi.JsonClass
import kotlinx.android.parcel.Parcelize


/**
 *
robotNo	机器人编号
dockStatus	0.自主充电未开启；
1.正在对桩；
2.对桩完成；（机器人停留在充电桩上）
3.正在离桩；
4.对桩异常；
autoStatus	0.自主导航未开启
1.定位模块初始化中;
2.准备就绪;（机器人已经到达目标点或初始化完成）
3.行走；（机器人前往目标点途中）
4.被阻挡;
5.暂停;
6.目标点被占用；
7.定位丢失
abnormalStatus	0: 正常
预留字段，根据实际场景上报异常
powerPercentage	 当前机器人电量
chargingStatus	1: 正在充电 0:未充电
currentScene	当前场景名称
workMode	启动模式(0:关闭导航 1:导航模式
2:自主充电 3:制图模式 4:遥控模式)
x	当前x坐标
y	当前y坐标
yaw	运动朝向
emergencyStatus	应急开关状态（0.关闭 1.开启）
stripStatus	0:防撞条未触发
1:防撞条触发
routePlan	当前场景下路径规划结果(点信息)
 */
@Keep
@JsonClass(generateAdapter = true)
data class RobotInfo(
    val robotNo: String = "",
    val dockStatus: String = "", val autoStatus: String = "",
    val abnormalStatus: String = "", val powerPercentage: String = "",
    val chargingStatus: String = "", val currentScene: String = "",
    val workMode: String = "", val x: String = "",
    val y: String = "", val yaw: String = "",
    val emergencyStatus: String = "", val routePlan: List<RoutePoint>,
    val stripStatus: String = ""
)


@Keep
@JsonClass(generateAdapter = true)
@Parcelize
data class RoutePoint(
    val id: String = "", val x: String = "",
    val y: String = "", val yaw: String = "",
    val name: String = ""
):Parcelable


